Los MacBook tienen una “bomba de tiempo” en macOS: el sistema de red falla tras 49 días sin reiniciar
por Juan Antonio SotoLos portátiles de Apple como el MacBook Neo, MacBook Air y otros modelos con macOS podrían sufrir un problema crítico tras largos periodos sin reiniciar. Según se ha descubierto, estos equipos pierden la capacidad de establecer nuevas conexiones de red después de exactamente 49 días, 17 horas, 2 minutos y 47 segundos de uso continuo. Un fallo que afecta directamente al stack TCP/IP de macOS, dejando al sistema prácticamente incomunicado.
Este comportamiento no es casual, sino que está relacionado con un error a nivel de kernel en XNU, el núcleo de Apple, que provoca un colapso progresivo de las conexiones. Aunque el sistema sigue funcionando aparentemente con normalidad, las aplicaciones que dependen de internet comienzan a fallar, generando una situación difícil de diagnosticar para muchos usuarios.
Un fallo en el kernel de macOS provoca el colapso de la red
El origen del problema está en una variable interna llamada tcp_now, utilizada por macOS para medir el tiempo en milisegundos dentro del sistema TCP. Este contador está limitado a 32 bits, lo que implica que tras alcanzar su valor máximo (4.294 millones), vuelve a cero. Sin embargo, en lugar de reiniciarse correctamente, el sistema queda “bloqueado” en ese punto.
Este fallo provoca que el reloj interno del sistema TCP deje de avanzar, lo que impide que las conexiones cerradas en estado TIME_WAIT se eliminen correctamente. Como resultado, estas conexiones se acumulan sin límite, ocupando recursos del sistema y, lo más importante, agotando los puertos disponibles para nuevas conexiones.
Acumulación de conexiones y agotamiento de puertos
Cuando el sistema deja de limpiar estas conexiones, se produce un efecto en cadena. Las conexiones en TIME_WAIT permanecen indefinidamente, lo que provoca que los puertos efímeros —normalmente unos 16.000 disponibles— se saturen con el paso de las horas. A partir de ese momento, el sistema ya no puede abrir nuevas conexiones TCP.
Esto se traduce en errores en aplicaciones, tiempos de espera prolongados y servicios que dejan de funcionar. Curiosamente, algunas funciones como el ping (ICMP) siguen operativas, lo que complica aún más la detección del problema, ya que el equipo parece seguir conectado a la red.
Un bug clásico de overflow que recuerda a Windows 95
Este fallo pertenece a una categoría muy conocida en informática: los errores por overflow de enteros de 32 bits. Casos similares se han visto en el pasado, como el famoso fallo de Windows 95 tras 49,7 días, o incluso el problema del año 2038 en sistemas Unix.
En este caso, el bug se produce porque el kernel de macOS no gestiona correctamente el reinicio del contador, lo que rompe la lógica interna encargada de expirar conexiones. Un pequeño detalle en el código que acaba provocando un fallo crítico tras semanas de funcionamiento continuo.
Reiniciar, la única solución… por ahora
Actualmente, la única solución efectiva es reiniciar el equipo, lo que restablece el contador y devuelve el sistema a la normalidad. Sin embargo, el problema volverá a aparecer tras otros 49,7 días de uso continuo, lo que lo convierte en un fallo especialmente problemático para entornos profesionales.
Este bug es especialmente relevante en sistemas que permanecen activos durante largos periodos, como servidores, equipos de desarrollo, estaciones de trabajo o infraestructuras empresariales. En estos casos, se recomienda programar reinicios periódicos para evitar la caída del sistema.
Apple podría solucionarlo con cambios más profundos
Aunque existen posibles soluciones, como el uso de variables de 64 bits para evitar el desbordamiento, esto requeriría cambios importantes en el kernel, pruebas adicionales y validación completa del sistema. Por ello, no se espera una solución inmediata en forma de parche sencillo.
Mientras tanto, algunos desarrolladores ya están trabajando en posibles soluciones alternativas, como parches en caliente del kernel, que podrían evitar la necesidad de reiniciar el sistema. Habrá que esperar a futuras actualizaciones de macOS para ver cómo Apple aborda este problema.
Fin del Artículo. ¡Cuéntanos algo en los Comentarios!




